Zero touch exploration for mobile device

ABSTRACT

A system includes determination of a layout of graphical representations of dataset members displayed by a display device of the apparatus, determination of a plurality of display device movements to monitor based on the layout, detection of one of the plurality of display device movements, and execution of an action associated with the detected movement on at least one of the graphical representations.

BACKGROUND

A mobile computing device may display data to a user. In order toexplore the data, the user may use a miniature keyboard or a touchscreenof the device to input associated commands and/or data to the device.These modalities are currently not efficient, suitable or intuitive insome usage scenarios.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an outward view of an apparatus according to some embodiments.

FIG. 2 is a block diagram of an architecture of an apparatus accordingto some embodiments.

FIG. 3 is a flow diagram of a process according to some embodiments.

FIG. 4 is an outward view of an apparatus displaying graphicalrepresentations according to some embodiments.

FIG. 5 is a block diagram of a system architecture according to someembodiments.

FIGS. 6 a and 6 b are outward views of an apparatus displaying graphicalrepresentations according to some embodiments.

FIG. 7 a is an outward view of an apparatus displaying graphicalrepresentations according to some embodiments.

FIGS. 7 b and 7 c illustrate movement and corresponding displays ofgraphical representations according to some embodiments.

FIG. 8 is an outward view of an apparatus displaying graphicalrepresentations according to some embodiments.

FIGS. 9 a and 9 b are outward views of an apparatus displaying graphicalrepresentations according to some embodiments.

FIG. 10 a is an outward view of an apparatus displaying graphicalrepresentations according to some embodiments.

FIGS. 10 b and 10 c illustrate movement and corresponding displays ofgraphical representations according to some embodiments.

FIG. 11 is a flow diagram of a process according to some embodiments.

FIG. 12 a is an outward view of an apparatus displaying graphicalrepresentations according to some embodiments.

FIGS. 12 b and 12 c illustrate movement and corresponding displays ofgraphical representations according to some embodiments.

FIG. 13 is a flow diagram of a process according to some embodiments.

FIG. 14 illustrates movement detection according to some embodiments.

FIG. 15 illustrates movement detection according to some embodiments.

FIG. 16 illustrates movement detection according to some embodiments.

FIG. 17 illustrates movement detection according to some embodiments.

DETAILED DESCRIPTION

The following description is provided to enable any person in the art tomake and use the described embodiments and sets forth the best modecontemplated for carrying out some embodiments. Various modifications,however, will remain readily apparent to those in the art.

FIG. 1 is a perspective view of apparatus 100 according to someembodiments. Apparatus 100 may comprise a tablet computer, a smartphone,a laptop or netbook computer, and/or any other device or devicessuitable to perform all or a part of the functions described herein.Apparatus 100 may include a display device to present visualizations anda touch-sensitive input surface to receive input at one or more portionsof the visualizations, although some embodiments do not include such atouch-sensitive input surface.

According to some embodiments, and as will be described in detail below,a display device of apparatus 100 may display a layout of graphicalrepresentations of dataset members. A user may move apparatus 100 inorder to select a particular one of the graphical representations and/orto explore a dataset member represented by a selected graphicalrepresentation. Apparatus 100 therefore includes hardware and softwareusable to detect movement thereof

FIG. 2 is a block diagram of an architecture of apparatus 100 accordingto some embodiments, and embodiments are not limited thereto. Apparatus100 includes memory interface 202, one or more processors (e.g.,microcontrollers, image processors and/or central processing units) 204,and peripherals interface 206. Memory interface 202, one or moreprocessors 204 and/or peripherals interface 206 may comprise separatecomponents or can be integrated within one or more integrated circuits.The various components in apparatus 200 may be coupled to one another byone or more communication buses or signal lines.

Sensors, devices and subsystems are coupled to peripherals interface 206to facilitate multiple functionalities. For example, location sensor208, accelerometer 210, compass 212, wireless device 214, and audio unit216 may be provided to facilitate the collection, use and interactionwith data and information and to achieve the functionality describedherein.

Location sensor 208 may include circuitry and sensors for supporting alocation determining capability, such as that provided by the GlobalPositioning System or other positioning system (e.g., systems usingWi-Fi access points, television signals, cellular grids, UniformResource Locators (URLs)).

Accelerometer 210 may provide information indicating movement and/ororientation of apparatus 100, as is known in the art. As will bedescribed below, the detection of movement based on this information maytrigger execution of user interface actions according to someembodiments. Compass 212 may determine an orientation of apparatus 100with respect to compass headings and may therefore also be used in someembodiments to detect movement as changes in orientation.

Wireless device 214 may include one or more wireless communicationsubsystems, such as an 802.11b/g communication device, and/or aBluetooth® communication device. Other communication protocols can alsobe supported, including other 802.x communication protocols (e.g.,WiMax, Wi-Fi), code division multiple access (CDMA), global system formobile communications (GSM), Enhanced Data GSM Environment (EDGE), 3G(e.g., EV-DO, UMTS, HSDPA), etc.

Audio unit 216 may include a speaker and a microphone to facilitatevoice-enabled functionalities, such as phone and voice mail functions.In some implementations, additional peripherals, sensors or subsystems(e.g., a camera, a photoelectric device, and a proximity sensor) may becoupled to peripherals interface 206 via connectors such as, for examplea Universal Serial Bus (USB) port, or a docking port, or some otherwired port connection.

I/O subsystem 220 may include touch screen controller 222 and/or otherinput controller(s) 224. Touch-screen controller 222 may be coupled todisplay device 232. Display device 232 and touch screen controller 222may, for example, detect contact (i.e., touch input), movement (i.e.,drag input) and release thereof using any of a plurality oftouch-sensitivity technologies, including but not limited to capacitive,resistive, infrared, and surface acoustic wave technologies, as well asother proximity sensor arrays or other elements for determining one ormore points of contact with display device 232. Other inputcontroller(s) 224 may be coupled to other input/control devices 234,such as one or more buttons, rocker switches, thumb-wheel, infraredport, USB port, and/or a pointer device such as a stylus.

Memory interface 202 is coupled to memory 240. Memory 240 can includehigh-speed random access memory and/or non-volatile memory, such as oneor more magnetic disk storage devices, one or more optical storagedevices, and/or flash memory (e.g., NAND, NOR). Memory 240 may storeprogram code of application programs 242-244 which may be executed byprocessors 204 to cause apparatus 200 to perform the functions describedherein.

Memory 240 can store an operating system, such as Android, Darwin, RTXC,LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such asVxWorks. The operating system may include instructions for handlingbasic system services and for performing hardware dependent tasks. Insome embodiments, the operating system can be a kernel (e.g., UNIXkernel). Memory 240 may also store data, including but not limited todocuments, images, video files, audio files, and other data.

FIG. 3 comprises a flow diagram of process 300 according to someembodiments. Process 200 and all other processes mentioned herein may beembodied in processor-executable program code read from one or morenon-transitory computer-readable media, such as a floppy disk, a CD-ROM,a DVD-ROM, a Flash drive, a fixed disk and a magnetic tape, and thenstored in a compressed, uncompiled and/or encrypted format. In someembodiments, hard-wired circuitry may be used in place of, or incombination with, program code for implementation of processes accordingto some embodiments. Embodiments are therefore not limited to anyspecific combination of hardware and software.

Prior to process 300, it will be assumed that a display device of anapparatus displays graphical representations of dataset members. FIG. 4is an outward view of apparatus 100 showing the display of fourgraphical representations. Each of the graphical representations isassociated with a respective dataset member. Graphical representation102 is “selected”, as indicated by its bold outline.

Embodiments are not limited to the particular graphical representationsshown in FIG. 4. Any one or more types of graphical representations maybe displayed. Embodiments are also not limited to any particulargraphical mechanism for indicating selection of a graphicalrepresentation.

The represented dataset members may consist of any type of data that isor becomes known. In one particular example, the dataset members aresales figures for different geographic regions. In some embodiments,apparatus 100 executes an application to retrieve the sales figures frommemory 240 and to display corresponding graphical representations ondisplay device 232.

In some embodiments, the dataset members may be retrieved from a remoteback-end system, but embodiments are not limited thereto. FIG. 5 is ablock diagram of system 500 according to some embodiments. In operation,client application 520 is executed by apparatus 100 and sends a requestfor sales figures to application server 530. In response, applicationserver 530 retrieves the requested figures from database 510 and returnsthem to client application 520 for display.

Database 510 may comprise any one or more systems to store data. Thedata stored in database 510 may be received from disparate hardware andsoftware systems, some of which are not interoperational with oneanother. The systems may comprise a back-end data environment employedin a business or industrial context. The data may be pushed to database510 and/or provided in response to queries received therefrom.

In some embodiments, database 510 is implemented in Random Access Memory(e.g., cache memory for storing recently-used data) and one or morefixed disks (e.g., persistent memory for storing their respectiveportions of the full database). Alternatively, database 510 mayimplement an “in-memory” database, in which volatile (e.g.,non-disk-based) memory (e.g., Random Access Memory) is used both forcache memory and for storing its entire respective portion of the fulldatabase. In some embodiments, the data of the full database maycomprise one or more of conventional tabular data, row-based data,column-based data, and object-based data. Database 510 may also oralternatively support multi-tenancy by providing multiple logicaldatabase systems which are programmatically isolated from one another.Moreover, the data of database 510 may be indexed and/or selectivelyreplicated in an index.

According to some embodiments, database 510 executes a database serverprocess to provide data to database applications. More specifically,database 510 may communicate with one or more database applicationsexecuted by application server 530 over one or more interfaces (e.g., aStructured Query Language (SQL)-based interface) in order to providedata thereto.

Application server 530 may execute database applications to provide, forexample, business reporting, inventory control, online shopping, and/orany other suitable functions. The database applications may, in turn,support client applications executed by end-user devices (e.g., desktopcomputers, laptop computers, tablet computers, smartphones, etc.). Sucha client application may comprise a rich client application, an appletin a Web browser, or any other application to access and displayinterfaces generated by a database application.

Returning to process 300, a layout of graphical representations isdetermined at S305. As described above, the graphical representationsrepresent dataset members displayed by a display device. Next, at S310,a plurality of display device movements to monitor are determined basedon the layout. Accordingly, the layout of the graphical representationsdictates the set of movements which are subsequently monitored. Examplesand further detail of each step of process 300 are provided below.

Flow pauses at S315 until one of the plurality of display devicemovements is detected. In response, an action associated with thedetected movement is executed at S320. The action is executed upon atleast one of the graphical representations. According to someembodiments, each of the monitored plurality of movements is associatedwith a different respective action. Therefore, the particular actionwhich is executed depends entirely on which of the monitored pluralityof movements is detected.

FIGS. 6 a and 6 b illustrate process 300 according to some embodiments.It will be assumed that, at the beginning of process 300, apparatusdisplays graphical representations as shown in FIG. 4. The layout of thegraphical representations is determined to be a horizontalone-dimensional layout at S305. Next, at S310, it is determined tomonitor clockwise and counter-clockwise rotations of apparatus 100.

FIG. 6 a illustrates counter-clockwise rotation which is detected atS315. Accordingly, at S320 and as shown in FIG. 6 a, representation 102is graphically indicated as de-selected and representation 104 isgraphically indicated as selected. Advantageously, such a movement andresulting action may be intuitive to the user (i.e., rotation to theleft results in selection of a next-leftmost item).

In contrast, FIG. 6 b illustrates counter-clockwise rotation which maybe detected at S315. Accordingly, representation 102 is graphicallyindicated as de-selected and representation 106 is graphically indicatedas selected at S320.

FIGS. 7 a through 7 c also illustrate process 300 according to someembodiments. FIG. 7 a illustrates a display device of apparatus 100displaying graphical representations, including selected graphicalrepresentation 702, prior to process 300. The layout of the graphicalrepresentations is determined to be a vertical one-dimensional layout atS305. Therefore, at S310, it is determined to monitor forward andbackward tilting of apparatus 100.

FIG. 7 b illustrates backward tilting (i.e., display device 232 isfacing to the left in the Figure) detected at S315. Accordingly,representation 702 is graphically indicated as de-selected andrepresentation 704 is graphically indicated as selected at S320.Similarly, FIG. 7 c illustrates forward tilting which may be detected atS315. Representation 702 is therefore graphically indicated asde-selected and representation 706 is graphically indicated as selectedat S320. Again, such movements and resulting actions may be intuitive tothe user.

FIG. 8 illustrates apparatus 100 displaying a two-dimensional layout ofgraphical representations of dataset members, with representation 802indicated as selected. According to some embodiments, this layoutresults in the determination of clockwise, counter-clockwise,forward-tilting and backward-tilting movements to monitor at S310. FIGS.9 a, 9 b, 10 b and 10 c illustrate these movements and resultingexecuted actions according to some embodiments.

Specifically, FIG. 9 a illustrates counter-clockwise rotation which isdetected at S315. At S320, and as shown in FIG. 9 a, representation 802is graphically indicated as de-selected and representation 804 isgraphically indicated as selected. FIG. 9 b illustrates clockwiserotation which is detected at S315. As shown in FIG. 9 b, representation802 is graphically indicated as de-selected and representation 806 isgraphically indicated as selected at S320.

FIG. 10 b illustrates backward tilting and the resulting actionperformed on the graphical representations of FIG. 10 a. As shown inFIG. 10 b, representation 802 is graphically indicated as de-selectedand representation 803 is graphically indicated as selected at S320.FIG. 7 c illustrates forward tilting and the resulting action performedon the graphical representations of FIG. 10 a. Specifically,representation 802 is graphically indicated as de-selected andrepresentation 805 is graphically indicated as selected at S320. Themovements and resulting actions of FIGS. 9 a, 9 b, 10 b and 10 c may beintuitive to the user.

FIG. 11 is a flow diagram of process 1100 according to some embodiments.Process 1100 may comprise an implementation of process 300. Moreover,process 1100 may be executed to provide the functionality describedabove with respect to FIGS. 6 a through 10 c.

Initially, at S1105, a number of dimensions in a layout of graphicalrepresentations is determined. As above, the graphical representationsrepresent dataset members and the layout is displayed by a displaydevice.

Flow proceeds to S1110 if the layout is one-dimensional. Embodiments arenot limited to the examples of “one-dimensional” provided herein. Forexample, a circular or other-shaped layout of graphical representationsmay be considered “one-dimensional” in some embodiments.

The direction of the layout is determined at S1110. Process 1100provides for the determination of either a horizontal or a verticaldirection. In this regard, a layout that is closer to horizontal than tovertical may be considered “horizontal”, and a layout that is closer tovertical than to horizontal may be considered “vertical” at S1110.

Assuming a horizontal layout as shown in FIG. 4, a first plurality ofdisplay device movements to monitor are determined at S1115. Accordingto the present embodiment, these movements consist of clockwise,counter-clockwise, “push” and “pull” movements. Push and pull movementsare described below.

The determined plurality of movements are monitored at S1125. In someembodiments, only the determined plurality of movements are acted upon,and other movements are ignored. Flow proceeds to S1130 if either theclockwise movement or the counter-clockwise movement is detected.

The selected graphical representation is changed at S1130. Examples ofthis change are described above with respect to FIGS. 6 a and 6 b. Flowthen returns to S1125 to continue to monitor the determined plurality ofmovements.

Flow continues to S1135 from S1125 upon detection of a push/pullmovement. At S1135, a dataset member associated with a selectedgraphical representation is opened. Opening refers to a drill-downaction to provide further detail regarding the dataset member.

FIG. 12 a shows apparatus 100 displaying a layout of graphicalrepresentations, with representation 1202 indicated as selected. FIG. 12b illustrates movement away from the user (i.e., a “push” movement) thatmay be detected at S1125. Consequently, and as also illustrated in FIG.12 b, the dataset member represented by representation 1202 is opened.Embodiments may employ any graphical technique for visualizing the“opening” of a dataset member.

Opening a dataset member may comprise display of a second layout ofgraphical representations of second dataset members, where the seconddataset members are components of the opened dataset member. In such acase, flow may return from S1135 to S1105 and continue as describedabove.

FIG. 12 c illustrates movement toward the user (i.e., a “pull”movement), and subsequent “closing” of the selected dataset memberaccording to some embodiments.

Returning to S1110, flow continues to S1120 if a vertical layoutdirection is determined. A second plurality of display device movementsto monitor is determined at S1120. According to some embodiments, thesecond plurality of display device movements includes forward-tilting,backward-tilting, push and pull movements. These movements are monitoredand acted upon at S1125-S1135 as described above.

Finally, if the layout is determined to be two dimensional at S1105, athird plurality of display device movements to monitor is determined atS1140. According to some embodiments, the third plurality of displaydevice movements includes clockwise, counter-clockwise, forward-tilting,backward-tilting, push and pull movements. These movements are alsomonitored and acted upon at S1125-S1135 as described above.

According to the above example, the movements monitored at S1125 differdepending on the layout of the graphical representations, and maythereby provide processing efficiency and accuracy.

FIG. 13 is a flow diagram of process 1300 according to some embodiments.Process 1300 may be executed to detect device movements as describedabove. Some embodiments of FIG. 13 improve efficiency and accuracy ofmovement detection.

A reference position of a display device is determined at S1305. Thereference position indicates a three-dimensional absolute position ofthe display device. The reference position may be determined and definedusing the device's internal compass, accelerometer and/or any othertechnique that is or becomes known.

Next, at S1310, movement of the display device is monitored with respectto the reference position. Monitoring movement may comprise collectingdata which indicates movement of the device. The monitored movement mayinclude rotation around any axis, and translation along any axis.According to some embodiments, the collected data indicating movement isfiltered at S1310.

For example, time-based low filters may be applied to remove dataindicating slow device movement, since such movement might not beindicative of an intended user input. Similarly, amplitude-based lowfilters may be applied at S1310 to remove data indicating small devicemovements. Moreover, amplitude-based high filters may be applied toremove large device movements, since such movements may be indicative ofchanges in the user's position (e.g., standing up, sitting down) ratherthan intended user input.

According to some embodiments, different filters are applied at S1310depending on the type of movement indicated by the data. For example,since a user-initiated device rotation intended to change a selectedgraphical representation may occur more slowly than user-initiated pushor pull movements, a time-based low filter applied to data indicatingrotational movement may be less selective in filtering slow movementsthan a time-based low filter applied to data indicating translationalmovement.

At S1315, it is determined whether the monitored movement as compared tothe reference position, has exceeded a threshold. The threshold maycomprise a particular amplitude over a particular time, and the relevantamplitude and time may differ depending on the type of movement beinganalyzed.

FIG. 14 illustrates movement monitoring according to some embodiments.Axes 1402 and 1404 indicate a reference position with respect to devicerotation about an axis perpendicular to the drawing page. If the axesare rotated as illustrated by arrow 1406, it may be determined at S1315that the movement has not exceeded a magnitude associated withcounter-clockwise movement. Conversely, if the axes are rotated asillustrated by arrow 1408, it may be determined at S1315 that themovement has exceeded a magnitude associated with counter-clockwisemovement. Flow then proceeds to S1325 to execute an associated action,such as those described above. A new reference position is thendetermined in S1305 and process 1300 resumes.

In the case that that the movement is determined to not exceed amagnitude associated with counter-clockwise movement, flow continuesfrom S1315 to S1320. At S1320, it is determined whether more than apredetermined period of time (e.g., 3 s) has elapsed since the lastdetermination of the reference position. If not, flow returns to S1310to monitor movement of the display device with respect to the lastreference position.

If more than the predetermined time period has passed, flow returns toS1305 to determine a new reference position. FIG. 15 illustrates a newreference position which may be determined after the reference positionshown in FIG. 14. For example, the reference position has rotatedcounter-clockwise due to movement of the device. It should be noted thatthis movement, because of its speed and/or magnitude, did not exceed thethreshold associated with counter-clockwise movement and therefore noaction was taken on the displayed graphical representations as a resultof the movement.

Process 1310 then proceeds with respect to the new reference position.In this regard, if the axes are now rotated as illustrated by arrow1506, it may be determined at S1315 that the movement has not exceeded amagnitude associated with counter-clockwise movement, but if the axesare rotated as illustrated by arrow 1508, it may be determined at S1315that the movement has exceeded a magnitude associated withcounter-clockwise movement.

In this regard, if the axes are now rotated as illustrated by arrow1506, it may be determined at S1315 that the movement has not exceeded amagnitude associated with counter-clockwise movement, but if the axesare rotated as illustrated by arrow 1508, it may be determined at S1315that the movement has exceeded a magnitude associated withcounter-clockwise movement.

FIG. 16 illustrates the monitoring of tilting movements according tosome embodiments. According to the present example, backward-tilting thedevice from reference position 1600 as indicated by arrow 1602 does notconstitute a movement exceeding threshold parameters associated withbackward tilting, while tilting the device from reference position 1600as indicated by arrow 1604 does, resulting in execution of an associatedaction at S1325.

Similarly, forward-tilting the device from reference position 1600 asindicated by arrow 1606 does not constitute a movement exceedingthreshold parameters associated with forward tilting, while tilting thedevice from reference position 1600 as indicated by arrow 1608 does,also resulting in execution of an associated action at S1325.

FIG. 17 illustrates the monitoring of push and pull movements accordingto some embodiments. Moving the device from reference position 1700 asindicated by arrow 1702 does not constitute a movement exceedingthreshold parameters associated with the push movement, while moving thedevice from reference position 1600 as indicated by arrow 1704 exceedingsuch parameters in the present example, resulting in execution of anassociated action at S1325.

Moving the device from reference position 1700 as indicated by arrow1706 does not constitute a movement exceeding threshold parametersassociated with the pull movement, while moving the device fromreference position 1700 as indicated by arrow 1708 does, resulting inexecution of an associated action at S1325.

Embodiments are not limited to the examples of movement, or to theresulting actions, described herein.

The embodiments described herein are solely for the purpose ofillustration. Those in the art will recognize other embodiments may bepracticed with modifications and alterations limited only by the claims.

What is claimed is:
 1. An apparatus comprising: a display device; and aprocessor to execute program code to cause the apparatus to: display, onthe display device, a plurality of graphical representations, each ofthe plurality of graphical representations representing a respectivedataset member, and the plurality of graphical representations beingarranged in a layout; determine a plurality of display device movementsto monitor based on the layout; detect one of the plurality of displaydevice movements; and in response to the detection of the one of theplurality of display device movements, graphically indicate ade-selection of a first one of the displayed graphical representationsand graphically indicate a selection of a second one of the displayedgraphical representations.
 2. An apparatus according to claim 1, theprocessor to execute program code to further cause the apparatus to:detect a second one of the plurality of display device movements; and inresponse to the detection of the second one of the plurality of displaydevice movements, display a second set of graphical representationsrepresenting second dataset members, each of the second dataset memberscomprising a component of a dataset member associated with acurrently-selected one of the graphical representations.
 3. An apparatusaccording to claim 1, the processor further to: display, on the displaydevice, a second plurality of graphical representations, each of thesecond plurality of graphical representations representing a respectivedataset member, and the second plurality of graphical representationsbeing arranged in a second layout; and determine a second plurality ofdisplay device movements to monitor based on the second layout, whereinthe second plurality of display device movements does not include atleast one of the first plurality of display device movements.
 4. Anapparatus according to claim 1, wherein detection of the one of theplurality of display device movements comprises: determination of areference position of the display device; monitoring of movement of thedisplay device with respect to the reference position; determinationthat none of the plurality of display device movements has occurredwithin a predetermined time period; and in response to the determinationthat none of the plurality of display device movements has occurredwithin the predetermined time period: determination of a secondreference position of the display device; and monitoring of movement ofthe display device with respect to the second reference position.
 5. Anapparatus according to claim 1, wherein determination of the layoutcomprises: determination of whether the layout is one-dimensional ortwo-dimensional; and in a case that the layout is one-dimensional,determination of whether the layout is horizontal or vertical, andwherein determination of the plurality of display device movementscomprises: determination of a first plurality of display devicemovements to monitor in a case that the layout is one-dimensional andhorizontal, a second plurality of display device movements to monitor ina case that the layout is one-dimensional and vertical, and a thirdplurality of display device movements to monitor in a case that thelayout is two-dimensional.
 6. A non-transitory computer-readable mediumhaving program code stored thereon, the program code executable by aprocessor to cause an apparatus to: display, on a display device, aplurality of graphical representations, each of the plurality ofgraphical representations representing a respective dataset member, andthe plurality of graphical representations being arranged in a layout;determine a plurality of display device movements to monitor based onthe layout; detect one of the plurality of display device movements; andin response to the detection of the one of the plurality of displaydevice movements, graphically indicate a de-selection of a first one ofthe displayed graphical representations and graphically indicate aselection of a second one of the displayed graphical representations. 7.A medium according to claim 6, the program code further executable bythe processor to cause an apparatus to: detect a second one of theplurality of display device movements; and in response to detection ofthe second one of the plurality of display device movements, display asecond set of graphical representations representing second datasetmembers, each of the second dataset members comprising a component of adataset member associated with a currently-selected one of the graphicalrepresentations.
 8. A medium according to claim 6, the program codefurther executable by the processor to cause an apparatus to: display,on the display device, a second plurality of graphical representations,each of the second plurality of graphical representations representing arespective dataset member, and the second plurality of graphicalrepresentations being arranged in a second layout; and determine asecond plurality of display device movements to monitor based on thesecond layout, wherein the second plurality of display device movementsdoes not include at least one of the first plurality of display devicemovements.
 9. A medium according to claim 6, wherein detection of theone of the plurality of display device movements comprises:determination of a reference position of the display device; monitoringof movement of the display device with respect to the referenceposition; determination that none of the plurality of display devicemovements has occurred within a predetermined time period; and inresponse to the determination that none of the plurality of displaydevice movements has occurred within the predetermined time period:determination of a second reference position of the display device; andmonitoring of movement of the display device with respect to the secondreference position.
 10. A medium according to claim 6, whereindetermination of the layout comprises: determination of whether thelayout is one-dimensional or two-dimensional; and in a case that thelayout is one-dimensional, determination of whether the layout ishorizontal or vertical, and wherein determination of the plurality ofdisplay device movements comprises: determination of a first pluralityof display device movements to monitor in a case that the layout isone-dimensional and horizontal, a second plurality of display devicemovements to monitor in a case that the layout is one-dimensional andvertical, and a third plurality of display device movements to monitorin a case that the layout is two-dimensional.
 11. Aprocessor-implemented method comprising: displaying, on a displaydevice, a plurality of graphical representations, each of the pluralityof graphical representations representing a respective dataset member,and the plurality of graphical representations being arranged in alayout; determining, by the processor, a plurality of display devicemovements to monitor based on the layout; detecting, by the processor,one of the plurality of display device movements; and in response todetecting the one of the plurality of display device movements,graphically indicating, on the display device, a de-selection of a firstone of the displayed graphical representations and graphicallyindicating a selection of a second one of the displayed graphicalrepresentations.
 12. A method according to claim 11, further comprising:detecting, by the processor, a second one of the plurality of displaydevice movements; and in response to detecting the second one of theplurality of display device movements, displaying, on the displaydevice, a second set of graphical representations representing seconddataset members, each of the second dataset members comprising acomponent of a dataset member associated with a currently-selected oneof the graphical representations.
 13. A method according to claim 11,further comprising: displaying, on the display device, a secondplurality of graphical representations, each of the second plurality ofgraphical representations representing a respective dataset member, andthe second plurality of graphical representations being arranged in asecond layout; and determining, by the processor, a second plurality ofdisplay device movements to monitor based on the second layout, whereinthe second plurality of display device movements does not include atleast one of the first plurality of display device movements.
 14. Amethod according to claim 11, wherein detecting the one of the pluralityof display device movements comprises: determining, by the rocessor, areference position of the display device; monitoring, by the processor,movement of the display device with respect to the reference position;determining, by the processor, that none of the plurality of displaydevice movements has occurred within a predetermined time period; and inresponse to determining that none of the plurality of display devicemovements has occurred within the predetermined time period:determining, by the processor, a second reference position of thedisplay device; and monitoring, by the processor, movement of thedisplay device with respect to the second reference position.
 15. Amethod according to claim 11, wherein determining the layout comprises:determining, by the processor, whether the layout is one-dimensional ortwo-dimensional; and in a case that the layout is one-dimensional,determining, by the processor, whether the layout is horizontal orvertical, and wherein determining the plurality of display devicemovements comprises: determining, by the processor, a first plurality ofdisplay device movements to monitor in a case that the layout isone-dimensional and horizontal, a second plurality of display devicemovements to monitor in a case that the layout is one-dimensional andvertical, and a third plurality of display device movements to monitorin a case that the layout is two-dimensional.